`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer: 
// 
// Create Date: 2020/09/14 23:04:20
// Design Name: 
// Module Name: EX_Mem
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//////////////////////////////////////////////////////////////////////////////////


module EX_Mem(
    input   wire            clk,
    input   wire            rst,

    input   wire [4:0]      i_wb_addr,
    input   wire            i_wb_en,
    input   wire [31:0]     i_wb_data,
    input   wire            i_is_mem,
    
    output  wire [4:0]      o_wb_addr,
    output  wire            o_wb_en,
    output  wire [31:0]     o_wb_data,
    output  wire            o_is_mem
    );
    
    reg [4:0] t_wb_addr;
    reg t_wb_en;
    reg [31:0] t_wb_data;
    reg t_is_mem;
    
    assign o_wb_addr = t_wb_addr;
    assign o_wb_en = t_wb_en;
    assign o_wb_data = t_wb_data;
    assign o_is_mem = t_is_mem;
    
    always @(posedge clk) begin
        if (rst == 0) begin
            t_wb_addr <= 0;
            t_wb_en <= 0;
            t_wb_data <= 0;
            t_is_mem <= 0;
        end else begin
            t_wb_addr = i_wb_addr;
            t_wb_en = i_wb_en;
            t_wb_data = i_wb_data;
            t_is_mem = i_is_mem;
        end
    end
    
endmodule
